// samsting : this file is auto create.

#ifndef ALIYUN_Ecs_ModifyAutoSnapshotPolicyRequest_H_
#define ALIYUN_Ecs_ModifyAutoSnapshotPolicyRequest_H_

#include "core/rpc_acs_request.h"

namespace aliyun { namespace Ecs {

class ModifyAutoSnapshotPolicyRequest : public RpcAcsRequest {
public:
  ModifyAutoSnapshotPolicyRequest();

  int64 GetOwnerId(void) const;
  void  SetOwnerId(int64 OwnerId);

  const string& GetResourceOwnerAccount(void) const;
  void          SetResourceOwnerAccount(const string& ResourceOwnerAccount);

  int64 GetResourceOwnerId(void) const;
  void  SetResourceOwnerId(int64 ResourceOwnerId);

  bool GetSystemDiskPolicyEnabled(void) const;
  void SetSystemDiskPolicyEnabled(bool SystemDiskPolicyEnabled);

  int  GetSystemDiskPolicyTimePeriod(void) const;
  bool SetSystemDiskPolicyTimePeriod(int SystemDiskPolicyTimePeriod);

  int  GetSystemDiskPolicyRetentionDays(void) const;
  bool SetSystemDiskPolicyRetentionDays(int SystemDiskPolicyRetentionDays);

  bool GetSystemDiskPolicyRetentionLastWeek(void) const;
  void SetSystemDiskPolicyRetentionLastWeek(bool SystemDiskPolicyRetentionLastWeek);

  bool GetDataDiskPolicyEnabled(void) const;
  void SetDataDiskPolicyEnabled(bool DataDiskPolicyEnabled);

  int  GetDataDiskPolicyTimePeriod(void) const;
  bool SetDataDiskPolicyTimePeriod(int DataDiskPolicyTimePeriod);

  int  GetDataDiskPolicyRetentionDays(void) const;
  bool SetDataDiskPolicyRetentionDays(int DataDiskPolicyRetentionDays);

  bool GetDataDiskPolicyRetentionLastWeek(void) const;
  void SetDataDiskPolicyRetentionLastWeek(bool DataDiskPolicyRetentionLastWeek);

  const string& GetOwnerAccount(void) const;
  void          SetOwnerAccount(const string& OwnerAccount);

private:
  int64  OwnerId_;
  string ResourceOwnerAccount_;
  int64  ResourceOwnerId_;
  bool   SystemDiskPolicyEnabled_;
  int    SystemDiskPolicyTimePeriod_;
  int    SystemDiskPolicyRetentionDays_;
  bool   SystemDiskPolicyRetentionLastWeek_;
  bool   DataDiskPolicyEnabled_;
  int    DataDiskPolicyTimePeriod_;
  int    DataDiskPolicyRetentionDays_;
  bool   DataDiskPolicyRetentionLastWeek_;
  string OwnerAccount_;

};

} } // namespace aliyun { namespace Ecs {

#endif // #ifndef ALIYUN_Ecs_ModifyAutoSnapshotPolicyRequest_H_

// end of file 
